/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package edu.capex.farmacus.encapsulates;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Embeddable;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 *
 * @author IK
 */
@Embeddable
public class VendedorfarmaciamedicamentoPK implements Serializable {
    @Basic(optional = false)
    @Column(name = "vendedor")
    private int vendedor;
    @Basic(optional = false)
    @Column(name = "farmacia")
    private int farmacia;
    @Basic(optional = false)
    @Column(name = "medicamento")
    private int medicamento;
    @Basic(optional = false)
    @Column(name = "fechaVenta")
    @Temporal(TemporalType.DATE)
    private Date fechaVenta;

    public VendedorfarmaciamedicamentoPK() {
    }

    public VendedorfarmaciamedicamentoPK(int vendedor, int farmacia, int medicamento, Date fechaVenta) {
        this.vendedor = vendedor;
        this.farmacia = farmacia;
        this.medicamento = medicamento;
        this.fechaVenta = fechaVenta;
    }

    public int getVendedor() {
        return vendedor;
    }

    public void setVendedor(int vendedor) {
        this.vendedor = vendedor;
    }

    public int getFarmacia() {
        return farmacia;
    }

    public void setFarmacia(int farmacia) {
        this.farmacia = farmacia;
    }

    public int getMedicamento() {
        return medicamento;
    }

    public void setMedicamento(int medicamento) {
        this.medicamento = medicamento;
    }

    public Date getFechaVenta() {
        return fechaVenta;
    }

    public void setFechaVenta(Date fechaVenta) {
        this.fechaVenta = fechaVenta;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (int) vendedor;
        hash += (int) farmacia;
        hash += (int) medicamento;
        hash += (fechaVenta != null ? fechaVenta.hashCode() : 0);
        return hash;
    }

    @Override
    public boolean equals(Object object) {
        // TODO: Warning - this method won't work in the case the id fields are not set
        if (!(object instanceof VendedorfarmaciamedicamentoPK)) {
            return false;
        }
        VendedorfarmaciamedicamentoPK other = (VendedorfarmaciamedicamentoPK) object;
        if (this.vendedor != other.vendedor) {
            return false;
        }
        if (this.farmacia != other.farmacia) {
            return false;
        }
        if (this.medicamento != other.medicamento) {
            return false;
        }
        if ((this.fechaVenta == null && other.fechaVenta != null) || (this.fechaVenta != null && !this.fechaVenta.equals(other.fechaVenta))) {
            return false;
        }
        return true;
    }

    @Override
    public String toString() {
        return "edu.capex.farmacus.encapsulates.VendedorfarmaciamedicamentoPK[ vendedor=" + vendedor + ", farmacia=" + farmacia + ", medicamento=" + medicamento + ", fechaVenta=" + fechaVenta + " ]";
    }
    
}
